<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<!-- 开发环境版本，包含了有帮助的命令行警告 -->
		<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
	</head>
	<body>
		<div id="demo">
			<span>{{a}}</span>
			<span>{{b}}</span>
		</div>
		<script type="text/javascript">
			var data = {
				a: 1,
				// b:null
			};

			// //freeze会阻止修改现有的 property，响应系统无法再追踪变化
			// Object.freeze(data);
			// data.a = 33;

			console.log(data.a);
			var vm = new Vue({
				el: "#demo",
				data: data
			});
			//修改变量，页面会响应式更新
			data.a = 11;

			//新增加的属性，页面不会更新。可以在初始值设置为null
			data.b = 22;
			
			//vue暴露了一些常用属性与方法，是以$开头
			console.log(vm.$data === data)
			console.log(vm.$el === document.getElementById('demo'))
			vm.$watch('a', function(oldValue, newValue) {
				console.log('a oldValue=' + oldValue + " newValue=" + newValue);
			})
			data.a=100;
		</script>

	</body>
</html>
